* emacs-lisp/easy-mmode.el (define-minor-mode): Don't re-evaluate the
authorStefan Monnier <monnier@iro.umontreal.ca>
Mon, 17 Jan 2011 21:42:23 +0000 (16:42 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Mon, 17 Jan 2011 21:42:23 +0000 (16:42 -0500)
keymap expression.  Improve docstring.

lisp/ChangeLog
lisp/emacs-lisp/easy-mmode.el

index 4ec65115cff3e2766b9e8457df8247def9197233..06bf48e96e03b804f09f4339a167030e96350e0e 100644 (file)
@@ -1,3 +1,8 @@
+2011-01-17  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * emacs-lisp/easy-mmode.el (define-minor-mode): Don't re-evaluate the
+       keymap expression.  Improve docstring.
+
 2011-01-15  Mark Diekhans  <markd@soe.ucsc.edu>
 
        * files.el (backup-buffer): Make last-resort backup file in
index f22cc2c362d6f526b021c1e94b4a4419f8a20231..3876e291d1bfdfffb8109fcfab7d4bbf15f018ab 100644 (file)
@@ -93,8 +93,9 @@ Optional INIT-VALUE is the initial value of the mode's variable.
 Optional LIGHTER is displayed in the modeline when the mode is on.
 Optional KEYMAP is the default keymap bound to the mode keymap.
   If non-nil, it should be a variable name (whose value is a keymap),
-  a keymap, or a list of arguments for `easy-mmode-define-keymap'.
-  If KEYMAP is a keymap or list, this also defines the variable MODE-map.
+  or an expression that returns either a keymap or a list of
+  arguments for `easy-mmode-define-keymap'.  If KEYMAP is not a symbol,
+  this also defines the variable MODE-map.
 
 BODY contains code to execute each time the mode is enabled or disabled.
   It is executed after toggling the mode, and before running MODE-hook.
@@ -256,7 +257,7 @@ With zero or negative ARG turn mode off.
             (let ((m ,keymap))
               (cond ((keymapp m) m)
                     ((listp m) (easy-mmode-define-keymap m))
-                    (t (error "Invalid keymap %S" ,keymap))))
+                    (t (error "Invalid keymap %S" m))))
             ,(format "Keymap for `%s'." mode-name)))
 
        (add-minor-mode ',mode ',lighter